1. Field of the Invention
This invention relates to infrastructure. Specifically, the present invention relates to communication infrastructure.
2. Description of the Related Art
Modern communication networks include circuit-switched networks and packet-switched networks. In a circuit-switched network, a circuit (e.g., one path) is established between end users. The end users have exclusive use of the circuit until the connection is released. In a packet-switched network, communication is also established between end users. However, the communication paths are shared in a packet-switched network. Messages transmitted between the end users are segmented into packets. The packets may then take different paths across the network.
Conventional voice communication is typically implemented with circuit-switched technology. In a conventional telephony system, communication is established between an end user and switching hardware. The switching hardware is typically considered an “originating switch,” such as a private branch exchange (PBX) or a central office. The PBX or the central office may be able to switch a call directly to a second end user if the second end user is connected to the PBX or central office. In the alternative, the call may be switched through a Public Switched Telephone Network (PSTN). Most conventional PSTN networks are implemented with circuit-switched technology.
In order to accurately locate and switch calls in the PSTN, a numbering plan known as the North American Numbering Plan (NANP) (e.g., XXX-XXXX) is implemented in North America. However, as the name implies, there are other numbering plans in other areas of the world. In the NANP, end users are given a specific number (i.e., predefined number) and the number is used to locate end users and switch calls in a network, such as a circuit-switched network.
As users move and change locations in conventional networks, a number of methods have developed which route and switch calls to end users. For example, routing methods, such as Local Number Portability (LNP), have been implemented. LNP is a circuit-switched network capability, which allows an end user to change a service provider and/or service type without changing their telephone number. Three categories of LNP are typically defined; (1) service provider portability, (2) location portability; and (3) service portability. Service provider portability allows an end user to change service providers while retaining his/her telephone number. Location portability allows an end user to change from one geographic area to another while retaining his/her telephone number. Service portability allows an end user to change service while retaining his/her telephone number with the same service provider. Service provider portability is implemented using a Location Routing Number.
A Location Routing Number (LRN) is used to implement LNP technology. LRN is a six-digit number used to access ported numbers (e.g., LNP numbers). As a result, the LRN serves as a network address. Carriers routing telephone calls to end users that have transferred their telephone numbers from one service provider to another obtain the LRN that corresponds to the dialed telephone number. The service provider then routes the call to the new service provider based on the LRN.
In addition to the foregoing circuit-switched technologies, conventional voice communications are continually advancing. For example, voice communications using packet-switched technology have been developed. Two approaches worthy of note include datagram communications and virtual circuit communications. In both forms of packet-switching, voice signals are first digitized and segmented into packets. In virtual circuit communications, the packets follow a path that is established between two end users. This may be considered a circuit-switched call that uses packets. In datagram technology, each packet is an individual unit and may follow its own path across the network from a sending end user to a receiving end user.
With the explosion of the Internet, voice-based communications are no longer just going over traditional voice communications networks, but are now going over the Internet. In the past, Internet networks were synonymous with data networks and the PSTN was considered a voice network. The lines between the Internet and traditional voice networks (e.g., PSTN) have blurred. As a result, technology has now been developed which enables the processing of voice calls across packet networks. One conventional type of technology for processing voice calls across packet networks is known as the softswitch.
A softswitch, as defined by the International Softswitch Consortium, as a software-based entity that provides call control functionality. A softswitch typically includes a call agent (e.g., media gateway controller, softswitch), media gateway, signaling gateway, feature server, application server, media server, management, provisioning and billing interfaces. A call agent provides the call logic or call control signaling for one or more media gateways. The media gateway transforms media from one transmission format to another. The signaling gateway encapsulates and transports PSTN signaling protocols over IP. The feature server provides enhanced call control services, such as network announcements, three-way calling, call waiting, etc. The application server provides the service logic and execution for one or more applications. The media server performs media processing on packet media streams. The management, provisioning, and billing interfaces provide management provisioning and billing functionality.
The components of a softswitch may be located in a single unit or may be distributed. While softswitch technology provides for more flexibility and speed in implementing communication networks, there is processing overhead required in updating the different components of a softswitch. For example, conventional methods of updating routing software in a softswitch is time consuming and arduous.
A number of different protocols are implemented on softswitches to operate the softswitch. Examples of softswitch protocols include the Session Initiation Protocol (SIP), H.323, H.248, etc. promulgated by the Softswitch Consortium. A conventional SIP implementation includes two standard components: (1) a SIP user agent, and (2) a SIP network server. The SIP user agent is the end user component of the SIP protocol. The SIP server is a network device that manages the signaling associated with multiple calls.
The SIP user agent includes a client component, known as the User Agent Client (UAC), and a server component, known as the User Agent Server (UAS). The client component initiates the calls and the server component answers the calls. As a result, peer-to-peer calls may be made using a client-server protocol.
SIP user agents may be implemented as lightweight clients suitable for embedding in end user devices, such as mobile handsets or Personal Data Assistants (PDAs). In the alternative, a SIP user agent may be implemented as a desktop application that binds with other software applications, such as contact managers, etc.
The SIP servers perform a number of functions, such as name resolution, user location, and message processing. For example, the SIP servers provide name resolution and user location of end users. In addition, since a calling party is unlikely to know the IP address or host name of the called party, the SIP server forwards messages to other servers using next hop routing protocols.
Conventional SIP servers operate in two different modes: state-oriented and stateless. A server operating in a state-oriented mode remembers the incoming requests it receives, along with the responses it sends back, and the outgoing requests it sends. A SIP server operating in stateless mode forgets all information once it has sent on a request. Stateless servers are typically implemented in the backbone of the SIP infrastructure while state-oriented mode servers are typically implemented in local devices close to the user agents and controlling domains of users.
As networks evolve, circuit-switched networks are integrating with the packet-switched networks. Therefore, a call initiating in a circuit-switched networks may ultimately terminate in a packet-switched network. The alternative is also true, a call initiating in a packet-switched network may terminate in a circuit-switched network.
Thus, there is a need for a method and apparatus that enables calls to transition seamlessly across various networks. There is a need for a method and apparatus for initiating, switching, and terminating calls across different networks.